{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 实验1 拟合模型实验"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 兼容python2和python3\n",
    "from __future__ import print_function\n",
    "\n",
    "import numpy as np\n",
    "from numpy.linalg import inv\n",
    "import scipy as sp\n",
    "from scipy.optimize import leastsq\n",
    "import matplotlib.pyplot as plt\n",
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 例\n",
    "\n",
    "假设给定一个训练数据集\n",
    "\n",
    "$$\n",
    "T=\\{(x_1,y_1),(x_2,y_2),\\ldots\\,(x_N,y_N)\\}\n",
    "$$\n",
    "\n",
    "其中，$x_i\\in\\mathbb{R}$是输入$x$的观测值，$y_i\\in\\mathbb{R}$是相应的输出$y$的观测值，$i=1,2,\\ldots,N$。多项式函数拟合的任务是假设给定数据由$M$次多项式函数生成，选择最有可能产生这些数据的$M$次多项式函数，即在$M$次多项式函数中选择一个对已知数据以及未知数据都有很好预测能力的函数。\n",
    "\n",
    "假设给定如图所示的10个数据点，用0～9次多项式函数对数据进行拟合（目标函数$y=sin2{\\pi}x$, 加上一个正态分布的噪音干扰）。图中画出了需要用多项式函数曲线拟合的数据。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 目标函数 \n",
    "def real_func(x):\n",
    "    return np.sin(2*np.pi*x)\n",
    "\n",
    "# 多项式\n",
    "def fit_func(p, x):\n",
    "    f = np.poly1d(p)\n",
    "    return f(x)\n",
    "\n",
    "# 残差\n",
    "def residuals_func(p, x, y):\n",
    "    ret = fit_func(p, x) - y\n",
    "    return ret"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x98c01d0>"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 十个点\n",
    "x = np.linspace(0, 1, 10)\n",
    "x_points = np.linspace(0, 1, 1000)\n",
    "# 加上正态分布噪音的目标函数的值\n",
    "y_ = real_func(x)\n",
    "y = [np.random.normal(0, 0.1)+y1 for y1 in y_]\n",
    "\n",
    "plt.plot(x_points, real_func(x_points), label='real')\n",
    "plt.plot(x, y, 'bo', label='noise')\n",
    "plt.legend()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 𝑀=0 时多项式函数拟合的情况"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "def fitting(M=0):\n",
    "    \"\"\"\n",
    "    M 为多项式的次数\n",
    "    \"\"\"    \n",
    "    # 随机初始化多项式参数\n",
    "    p_init = np.random.rand(M+1)\n",
    "    # 最小二乘法\n",
    "    p_lsq = leastsq(residuals_func, p_init, args=(x, y))\n",
    "    print('Fitting Parameters:', p_lsq[0])\n",
    "    \n",
    "    # 可视化\n",
    "    plt.plot(x_points, real_func(x_points), label='real')\n",
    "    plt.plot(x_points, fit_func(p_lsq[0], x_points), label='fitted curve')\n",
    "    plt.plot(x, y, 'bo', label='noise')\n",
    "    plt.legend()\n",
    "    return p_lsq"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Fitting Parameters: [-0.0423685]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# M=0\n",
    "p_lsq_0 = fitting(M=0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 𝑀=1 时多项式函数拟合的情况"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Fitting Parameters: [-1.38313764  0.64920032]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# M=1\n",
    "p_lsq_1 = fitting(M=1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 𝑀=9 时多项式函数拟合的情况"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Fitting Parameters: [-2.09456947e+04  9.19463870e+04 -1.68634409e+05  1.67463137e+05\n",
      " -9.75168273e+04  3.36857605e+04 -6.62859683e+03  6.47685391e+02\n",
      " -1.76463169e+01  2.17372391e-02]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# M=9\n",
    "p_lsq_9 = fitting(M=9)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 𝑀=3 时多项式函数拟合的情况"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Fitting Parameters: [ 18.52430655 -27.63249928   9.00574789   0.0316629 ]\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# M=3\n",
    "p_lsq_3 = fitting(M=3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 实验二 正则化实验"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "regularization = 0.0001\n",
    "\n",
    "def residuals_func_regularization(p, x, y):\n",
    "    ret = fit_func(p, x) - y\n",
    "    ret = np.append(ret, np.sqrt(0.5*regularization*np.square(p))) # L2范数作为正则化项\n",
    "    return ret"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 最小二乘法,加正则化项\n",
    "p_init = np.random.rand(9+1)\n",
    "p_lsq_regularization = leastsq(residuals_func_regularization, p_init, args=(x, y))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x793fe48>"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(x_points, real_func(x_points), label='real')\n",
    "plt.plot(x_points, fit_func(p_lsq_9[0], x_points), label='fitted curve')\n",
    "plt.plot(x_points, fit_func(p_lsq_regularization[0], x_points), label='regularization')\n",
    "plt.plot(x, y, 'bo', label='noise')\n",
    "plt.legend()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "regularization = 0.0001\n",
    "\n",
    "def residuals_func_regularization(p, x, y):\n",
    "    ret = fit_func(p, x) - y\n",
    "    ret = np.append(ret, np.sqrt(regularization*abs(p))) # L1范数作为正则化项\n",
    "    return ret"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 最小二乘法,加正则化项\n",
    "p_init = np.random.rand(9+1)\n",
    "p_lsq_regularization = leastsq(residuals_func_regularization, p_init, args=(x, y))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x79c2cf8>"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(x_points, real_func(x_points), label='real')\n",
    "plt.plot(x_points, fit_func(p_lsq_9[0], x_points), label='fitted curve')\n",
    "plt.plot(x_points, fit_func(p_lsq_regularization[0], x_points), label='regularization')\n",
    "plt.plot(x, y, 'bo', label='noise')\n",
    "plt.legend()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
